package zuoye.zuoye06;

import java.util.Scanner;

public class 彩票 {
    //3. 双色球的中奖程序
    // 需求：
    // 1). 系统产生一个双色球中奖号码
    // （双色球的规则：6个红球+1个蓝球组成，红球范围：1-33，蓝色范围：1-16
    // 6个红球不能重复，蓝球可以和红球的值相同）
    // 2). 用户输入一组双色球号码，然后和系统产生的号码进行比较，给出比较的结果
    // （中奖规则：
    // 一等奖：6 + 1
    // 二等奖：6 + 0
    // 三等奖：5 + 1
    // 四等奖：5 + 0 或 4 + 1
    // 五等奖：4 + 0或 3 + 1
    // 六等奖：1蓝球相符既可）
    public static void main(String[] args) {
        //生成红球随机数
        int[] red = new int[6];
        for (int i = 0; i < red.length; i++) {
            red[i] = (int) (Math.random() * 33) + 1;
            for (int j = 0; j < i; j++) {
                if (red[i] == red[j]) {
                    i--;
                    break;
                }
            }
        }
        //生成蓝球随机数
        int blue = (int) (Math.random() * 16) + 1;

        System.out.println(blue);
        for (int i = 0; i < red.length; i++) {
            System.out.println(red[i]);
        }

        Scanner input = new Scanner(System.in);
        int[] stured = new int[6];
        boolean flag = false;
        for (int i = 0; i < stured.length; i++) {
            System.out.println("请输入红球号码");
            stured[i] = input.nextInt();
            if (stured.length != 6) {
                System.out.println("输入信息有误，请重新输入！需要六个整数.");
                continue;
            }
            if (stured[i]>33&stured[i]<1){
                System.out.println("输入信息有误，请重新输入！需要输入1-33之间的整数.");
                continue;
            }
            for (int j = 0; j < i; j++) {
                if (stured[i] == stured[j]) {     //验证用户输入的字符串重复 去重
                    flag = true;
                    break;
                }
            }
            if (flag == true) {
                System.out.println("输入信息不能重复，请重新输入！");
                continue;
            }
        }

        System.out.println("请输入蓝球号码：");
        int stublue = input.nextInt();
        if (stublue < 1 && stublue > 15) {
            System.out.println("输入信息有误，请重新输入！需要1个整数,并且值在1-16之间");
        }

        int rednum = 0;
        int bluenum = 0;
        for (int i = 0; i < stured.length; i++) {
            if (stured[i] == red[i]) {
                rednum++;
            }
            if (stublue == blue) {
                bluenum++;
            }
        }



        for (int i = 0; i < red.length; i++) {
            if (rednum == 6 & blue == 1) {
                System.out.println("恭喜您，中了一等奖。 中奖号码为：" + red[i] + blue);
            } else if (rednum == 6) {
                System.out.println("恭喜您，中了二等奖。 中奖号码为：" + red[i]);
            } else if (rednum == 5 & bluenum == 1) {
                System.out.println("恭喜您，中了三等奖。 中奖号码为：" + red[i] + blue);
            } else if (rednum == 5 || rednum == 4 && bluenum == 1) {
                System.out.println("恭喜您，中了四等奖。 中奖号码为：" + red[i] + blue);
            } else if (rednum == 4 || rednum == 3 && bluenum == 1) {
                System.out.println("恭喜您，中了五等奖。 中奖号码为：" + red[i] + blue);
            } else if (bluenum == 1) {
                System.out.println("恭喜您，中了六等奖。 中奖号码为：" + blue);
            } else {
                System.out.println("没有中奖，谢谢支持");
            }

        }
        for (int e : red) {
            System.out.println(e + " ");
        }
        System.out.println("蓝球为：" + blue);
    }

}
